package com.yunji.aggregate.model.vo.stock;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.yunji.common.annotation.Excel;
import com.yunji.common.base.BaseDO;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.Date;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class DiscardTicketStatisticsVO extends BaseDO {

    @ApiModelProperty("报废单据ID")
    private Long discardId;

    @ApiModelProperty("报废单据单号")
    @Excel(name = "报废单据单号", width = 15)
    private String discardCode;

    @ApiModelProperty("维修单据ID")
    private Long repairId;

    @ApiModelProperty("维修单据单号")
    @Excel(name = "维修单据单号", width = 15)
    private String repairCode;

    @ApiModelProperty("发起单位")
    private Long belongId;

    @ApiModelProperty("出库单位")
    private Long outBelongId;

    @ApiModelProperty("申请人ID")
    private Long applyId;

    @ApiModelProperty("申请人所属ID")
    private Long applyBelongId;

    @ApiModelProperty("申请人姓名")
    @Excel(name = "申请人姓名", width = 15)
    private String applyName;

    @ApiModelProperty("申请人所属名称")
    @Excel(name = "申请人所属名称", width = 15)
    private String applyBelongName;

    @ApiModelProperty("申请时间")
    @Excel(name = "申请时间", width = 15)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date applyTime;

    @ApiModelProperty("审核人ID")
    private Long auditId;

    @ApiModelProperty("审核人所属ID")
    private Long auditBelongId;

    @ApiModelProperty("审核人姓名")
    @Excel(name = "审核人姓名", width = 15)
    private String auditName;

    @ApiModelProperty("审核人所属名称")
    @Excel(name = "审核人所属名称", width = 15)
    private String auditBelongName;

    @ApiModelProperty("审核时间")
    @Excel(name = "审核时间", width = 15)
    private Date auditTime;

    @ApiModelProperty("审核状态  0-待审核 1-通过 2-驳回")
    @Excel(name = "审核状态  0-待审核 1-通过 2-驳回", width = 15)
    private Integer auditStatus;

    @ApiModelProperty("报废状态 报废状态 0-草稿 1-已提交 2-已完成 3-已取消 4-作废")
    @Excel(name = "报废状态 报废状态 0-草稿 1-已提交 2-已完成 3-已取消 4-作废", width = 15)
    private Integer discardStatus;

    @ApiModelProperty("附件(照片)")
    @Excel(name = "附件(照片)", width = 15)
    private String albumPics;

    @ApiModelProperty("驳回原因")
    @Excel(name = "驳回原因", width = 15)
    private String reason;

    @ApiModelProperty("报废备注")
    @Excel(name = "报废备注", width = 15)
    private String remark;

    @ApiModelProperty("删除状态 0-未删除 1-已删除")
    private Integer delFlag;

    @ApiModelProperty("报废总数")
    @Excel(name = "报废总数", width = 15)
    private BigDecimal discardAmount;

//    @ApiModelProperty("报废详情")
//    private List<DiscardInfo> infoList;

    @ApiModelProperty("父级所属ID")
    private Long parentId;

    @ApiModelProperty("所属单位名称")
    @Excel(name = "所属单位名称", width = 15)
    private String belongName;

    @ApiModelProperty("出库单位名称")
    @Excel(name = "出库单位名称", width = 15)
    private String outBelongName;

    @ApiModelProperty("草稿(0-存在 1-不存在)")
    private Integer draftStatus;
}
